<?php
Yii::import('application.core.logica.google.Auxiliar_api');

class NuevoEmpleado{

	private $nro_prox_empleado;
 
//_________________CREAR NUEVO USUARIO___________________

  	public function __construct($nombre_empleado, $apellido_empleado, $dni_empleado, $especialidad, $sucursal, $transporte, $direccion){

  	    $conexion=Yii::app()->db;// 
	    // Check connection
	    if (mysqli_connect_errno()) {
	    	echo "Failed to connect to MySQL: " . mysqli_connect_error();
	    } else{
			if($this->NoExisteDNI($conexion,$dni_empleado)){
			    $clase=new Auxiliar_api();
				$coordenadas=$clase->trans_a_coordenadas($direccion);
				$clave=Yii::app()->securityManager->getEncryptionKey();
				$this->generar_numero_empleado($conexion); //genera numero para el empleado
				$consulta="insert into empleados (nro_empleado, nombre,apellido,dni,especialidad,transporte,sucursal,direccion,coordenadas)
				Values('".$this->nro_prox_empleado."','".$nombre_empleado."','".$apellido_empleado."', HEX(AES_ENCRYPT('$dni_empleado','".$clave."')),'".$especialidad."','".$transporte."','".$sucursal."','".$direccion."','".$coordenadas."')"; 
				$resultado=$conexion->createCommand($consulta)->execute();//
			}
			else{
				return false;
			}
	    	
		}
	  }

	public function get_nro_empleado(){
		return $this->nro_prox_empleado;
	}

//________METODOS PRIVADOS__________ 

	private function generar_numero_empleado($conexion){
		$datonumero=$conexion->createCommand("SELECT MAX(nro_empleado) as nro_empleado FROM empleados");
		$datos=$datonumero->query();
		foreach($datos as $dato){
			$this->nro_prox_empleado =$dato['nro_empleado']+1;
		}
	  }
	  
	 private function NoExisteDNI($con,$dni){
	    $clave=Yii::app()->securityManager->getEncryptionKey();
		$cantidad=$con->createCommand("SELECT count(*) as cantidad FROM empleados WHERE dni=HEX(AES_ENCRYPT('$dni','".$clave."'))");
		$datos=$cantidad->query();
		foreach($datos as $dato){
			return ($dato['cantidad']==0);
		}
		
	}
}
?>